package com.example.gildestudy1;

import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

import com.bumptech.glide.Glide;

import java.io.File;

public class MainActivity extends AppCompatActivity {
    public static final String ANDROID_RESOURCE = "android.resource://";
    public static final String FOREWARD_SLASH = "/";



    private  Button start_complex_glide;
    private ImageView imageView;
    private  Button imageButton1;
    private  int  localimage = R.mipmap.ic_launcher;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
        onClick();
    }

    private void doImage1() {
        //加载一张普通的网络图片
        Glide.with(MainActivity.this).load("https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png").into(imageView);
    }

    private  void doImage2(){
        //加载本地一张资源图片
        Glide.with(MainActivity.this).load(localimage).into(imageView);
    }

    private  void doImage3(){
//        接着在使用SDcard进行读写的时候 会用到Environment类下面的几个静态方法  ：
//        1: getDataDirectory() 获取到Android中的data数据目录（sd卡中的data文件夹）
//        2:getDownloadCacheDirectory() 获取到下载的缓存目录（sd卡中的download文件夹）
//        3:getExternalStorageDirectory() 获取到外部存储的目录 一般指SDcard（/storage/sdcard0）
//        4:getExternalStorageState() 获取外部设置的当前状态 一般指SDcard，
//        比较常用的应该是 MEDIA_MOUNTED（SDcard存在并且可以进行读写）还有其他的一些状态，可以在文档中进行查找。
//        5:getRootDirectory()  获取到Android Root路径


        //加载文件中一张资源图片
        File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "myssss.jpg");
        System.out.println("zyw--"+Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES));
        Glide.with(MainActivity.this).load(file).into(imageView);
    }

    private void doImage4(){
        Uri uri = resourceIdToUri(MainActivity.this, R.mipmap.ic_launcher);
        Glide.with(MainActivity.this).load(uri).into(imageView);
    }

    private Uri resourceIdToUri(Context context, int resourceId) {
        return Uri.parse(ANDROID_RESOURCE + context.getPackageName() + FOREWARD_SLASH + resourceId);
    }

    private void initView() {
        imageView = (ImageView) findViewById(R.id.image_view1);
        imageButton1 = (Button) findViewById(R.id.image_button1);
        start_complex_glide = (Button)findViewById(R.id.start_complex_glide);
    }

    private void onClick(){
        imageButton1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
               doImage1();
             //  doImage2();
//                doImage3();
              //  doImage4();
            }
        });

        start_complex_glide.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this , RecyclerViewActivity.class);
                startActivity(intent);
                finish();
            }
        });
    }

}
